/*
 * Converter.h
 *
 *  Created on: Dec 25, 2013
 *      Author: knuke
 */

#ifndef CONVERTER_H_
#define CONVERTER_H_

#include <ostream>
#include <string>
#include <vector>

namespace graphiclicious_converter
{
  class Importer;
  class Exporter;

  class Converter
  {
  public:
    Converter();
    virtual ~Converter();

    void convert(std::string in_file, std::string out_file);

    static void verboseWriteLn(const char* format, ...);
    static void setVerboseStream(std::ostream& verbose_stream);
    static void setVerbose(bool verbose);

  private:
    static bool verbose_;
    static std::ostream* verbose_stream_;
    Importer* importer_;
    Exporter* exporter_;
  };

} /* namespace cc_model */

#endif /* CONVERTER_H_ */
